-- cring vsb thing: -- local owner = owner ---------------------- -- Services local TweenS = game:service("TweenService") ------------- -- UTILS -- local Utils = {} function Utils:Create(InstData, Props) local Obj = Instance.new(InstData[1], InstData[2]) for k, v in pairs (Props) do Obj[k] = v end; return Obj end function Utils:CNR(cf) -- CFrameNoRotate return CFrame.new(cf.x,cf.y,cf.z) end -- LEGACY FUNCTIONS WITH ADDED FEATURES function Utils:ezweld(p, a, b, cf, c1) local weld = Instance.new("Weld",p) weld.Part0 = a weld.Part1 = b weld.C0 = cf if c1 then weld.C1 = c1 end return weld end function Utils:NewSound(p, id, pit, vol, loop, autoplay) local Sound = Instance.new("Sound",p) Sound.Pitch = pit Sound.Volume = vol Sound.SoundId = "rbxassetid://" ..id Sound.Looped = loop if autoplay then Sound:Play() end return Sound end ----------- local SCALE = Vector3.one * 1.75 function halowheel(dir, parent) local wheel = Utils:Create({"Part", parent or script}, { Size = Vector3.new(1.034, 2.076, 2.076) * SCALE, Shape = "Cylinder", CFrame = CFrame.new(0, 50, 0), Transparency = 1, CustomPhysicalProperties = PhysicalProperties.new(1, .4, .05, 100, 100) }) -- ok the model local mod = Utils:Create({"Part", wheel}, { CanCollide = false, Transparency = 0, Material = "Fabric", }); Utils:ezweld(mod, mod, wheel, CFrame.Angles(0, math.pi/2, 0)) Utils:Create({"SpecialMesh", mod}, { MeshId = dir == "right" and "rbxassetid://12466435991" or "rbxassetid://12466841482", TextureId = "rbxassetid://12466469102", Scale = SCALE, }) return wheel end -- ok. now make it function makehog(where) local YOFF = 1 local SIZEDOWN = .6 local wart = Instance.new("Model", script) -- main part local hull = Utils:Create({"Part", wart}, { Size = Vector3.new(2.0133800506591797 + 1.034, 3.481 - YOFF - SIZEDOWN, 9.942) * SCALE, -- 2.859 CFrame = where, Transparency = 1, Anchored = true, CustomPhysicalProperties = PhysicalProperties.new(.2, .1, .4, 100, 100) }) -- hull model local mod = Utils:Create({"Part", hull}, { CanCollide = false, Transparency = 0, Material = "Fabric", }); Utils:ezweld(mod, mod, hull, CFrame.new(0, -YOFF * SCALE.y, 0) * CFrame.Angles(0, math.pi/2, 0)) Utils:Create({"SpecialMesh", mod}, { MeshId = "rbxassetid://12466584877", TextureId = "rbxassetid://12466587133", Scale = SCALE, }) -- seat local seat = Utils:Create({"VehicleSeat", wart}, { Size = Vector3.new(1, .05, 1) * SCALE, -- 2.859 CFrame = where, Transparency = 1, Anchored = true, Material = "SmoothPlastic", MaxSpeed = 78/1.75, TurnSpeed = 3, Torque = 8, }); Utils:ezweld(seat, seat, hull, CFrame.new(.8 * SCALE.x, -hull.Size.y/2, -.25 * SCALE.z)) -- right wheels local wheel = halowheel("right", wart) wheel.Anchored = true --wheel.CFrame = hull.CFrame * CFrame.new(3.425 / 2, -1.152017593383789 * SCALE.y, -2.0133800506591797 * SCALE.z) wheel.CFrame = hull.CFrame * CFrame.new(2.0133800506591797 * SCALE.x, -(1.152017593383789 - YOFF) * SCALE.y, -3.4255070686340330 * SCALE.z) wheel.LeftSurface = "Hinge" local wheel = halowheel("right", wart) wheel.Anchored = true wheel.CFrame = hull.CFrame * CFrame.new(2.0133800506591797 * SCALE.x, -(1.152017593383789 - YOFF) * SCALE.y, 3.3221635818481445 * SCALE.z) wheel.LeftSurface = "Hinge" -- left wheels local wheel = halowheel("left", wart) wheel.Anchored = true --wheel.CFrame = hull.CFrame * CFrame.new(3.425 / 2, -1.152017593383789 * SCALE.y, -2.0133800506591797 * SCALE.z) wheel.CFrame = hull.CFrame * CFrame.new(-2.0133800506591797 * SCALE.x, -(1.152017593383789 - YOFF) * SCALE.y, -3.4255070686340330 * SCALE.z) wheel.RightSurface = "Hinge" local wheel = halowheel("left", wart) wheel.Anchored = true wheel.CFrame = hull.CFrame * CFrame.new(-2.0133800506591797 * SCALE.x, -(1.152017593383789 - YOFF) * SCALE.y, 3.3221635818481445 * SCALE.z) wheel.RightSurface = "Hinge" -- end of stuff --hull:MakeJoints() for i,v in wart:children() do v:MakeJoints() end for i,v in wart:children() do v.Anchored = false end end makehog(owner.Character.Head.CFrame + Vector3.new(0, 5))